package com.ruoyi.neusoft.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 智能AI识别模型版本管理对象 ai_identify_model_version_t
 * 
 * @author ruoyi
 * @date 2024-03-07
 */
public class AiIdentifyModelVersionT extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 鐗堟湰鍙稩D */
    private Long versionId;

    /** 妯″瀷ID */
    @Excel(name = "妯″瀷ID")
    private Long modelId;

    /** 版本号 */
    @Excel(name = "版本号")
    private String version;

    /** 最新发布时间（废弃） */
    @Excel(name = "最新发布时间", readConverterExp = "废=弃")
    private Date publishTime;

    /** 训练时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "训练时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date trainTime;

    /** 模型备注 */
    @Excel(name = "模型备注")
    private String versionRemark;

    /** 版本资源路径 */
    @Excel(name = "版本资源路径")
    private String resourcePath;

    /** 状态（0：未训练，1：训练中，2：训练完成，3：训练失败） */
    @Excel(name = "状态", readConverterExp = "0=：未训练，1：训练中，2：训练完成，3：训练失败")
    private Long status;

    /** 训练进度 */
    @Excel(name = "训练进度")
    private String progress;

    /** 训练准确度 */
    @Excel(name = "训练准确度")
    private String accuracy;

    /** 模型名称 */
    @Excel(name = "模型名称")
    private String modelName;

    /** 模型类别 */
    @Excel(name = "模型类别")
    private String modelKind;

    /** 老版本号 */
    @Excel(name = "老版本号")
    private String oldVersion;

    /** 新版本号 */
    @Excel(name = "新版本号")
    private String publishVersion;

    public void setVersionId(Long versionId) 
    {
        this.versionId = versionId;
    }

    public Long getVersionId() 
    {
        return versionId;
    }
    public void setModelId(Long modelId) 
    {
        this.modelId = modelId;
    }

    public Long getModelId() 
    {
        return modelId;
    }
    public void setVersion(String version) 
    {
        this.version = version;
    }

    public String getVersion() 
    {
        return version;
    }
    public void setPublishTime(Date publishTime) 
    {
        this.publishTime = publishTime;
    }

    public Date getPublishTime() 
    {
        return publishTime;
    }
    public void setTrainTime(Date trainTime) 
    {
        this.trainTime = trainTime;
    }

    public Date getTrainTime() 
    {
        return trainTime;
    }
    public void setVersionRemark(String versionRemark) 
    {
        this.versionRemark = versionRemark;
    }

    public String getVersionRemark() 
    {
        return versionRemark;
    }
    public void setResourcePath(String resourcePath) 
    {
        this.resourcePath = resourcePath;
    }

    public String getResourcePath() 
    {
        return resourcePath;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setProgress(String progress) 
    {
        this.progress = progress;
    }

    public String getProgress() 
    {
        return progress;
    }
    public void setAccuracy(String accuracy) 
    {
        this.accuracy = accuracy;
    }

    public String getAccuracy() 
    {
        return accuracy;
    }
    public void setModelName(String modelName) 
    {
        this.modelName = modelName;
    }

    public String getModelName() 
    {
        return modelName;
    }
    public void setModelKind(String modelKind) 
    {
        this.modelKind = modelKind;
    }

    public String getModelKind() 
    {
        return modelKind;
    }
    public void setOldVersion(String oldVersion) 
    {
        this.oldVersion = oldVersion;
    }

    public String getOldVersion() 
    {
        return oldVersion;
    }
    public void setPublishVersion(String publishVersion) 
    {
        this.publishVersion = publishVersion;
    }

    public String getPublishVersion() 
    {
        return publishVersion;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("versionId", getVersionId())
            .append("modelId", getModelId())
            .append("version", getVersion())
            .append("publishTime", getPublishTime())
            .append("trainTime", getTrainTime())
            .append("versionRemark", getVersionRemark())
            .append("resourcePath", getResourcePath())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("status", getStatus())
            .append("progress", getProgress())
            .append("accuracy", getAccuracy())
            .append("modelName", getModelName())
            .append("modelKind", getModelKind())
            .append("oldVersion", getOldVersion())
            .append("publishVersion", getPublishVersion())
            .toString();
    }
}
